Network relay device, network relay method, and network relay program

ABSTRACT

A communication disabled time during a network failure can be shortened. An SW1 capable of generating a layer 3 packet from a received layer 2 frame and transmitting the generated layer 3 packet includes: a plurality of ports 200 which is capable of transmitting and receiving data; a layer 2 ring processing unit 203 which detects a failure of a network 3 connected via the ports 200; and a VXLAN processing unit 4 which generates a plurality of layer 3 packets from one layer 2 frame received via the ports 200 when the failure of the network 3 is detected by the layer 2 ring processing unit 203, and transmits the generated plurality of layer 3 packets to a network via the plurality of ports 200.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present invention relates to a technique for relaying data in acommunication network.

2. Description of the Related Art

In a communication network, there is a problem that communication cannotbe performed when a cable is broken or a device failure occurs.Therefore, in a layer 2 (layer in an OSI reference model) network, aspanning tree (defined in IEEE802.1D) is used which eliminates a loopconfiguration by providing a blocking port logically without dependingon a network topology such as a mesh topology or a ring topology, andrecovers communication by opening the blocking port when a failureoccurs.

By limiting the topology to a ring, each network device vendorindependently formulates a specification for a ring protocol whichspeeds up fault detection and fault recovery. As such a ring protocol,for example, an ALAXALA ring protocol is known.

In a layer 3 which operates based on the layer 2, since a path of thelayer 3 is switched after a path of the layer 2 is switched, there is aproblem that it takes time for the switching of the path of layer 3.Therefore, there is a technique for speeding up the switching time bysearching for a switching path in advance for each failure location andsetting a path searched in advance when the failure occurs (see, forexample, RFC4090: Fast Reroute Extensions to RSVP-TE for LSP Tunnels(Non-Patent Literature 1)).

SUMMARY OF THE INVENTION

By using the technique in Non-Patent Literature 1, speeding up of thepath switching can be achieved, but when there are many switchingtargets, or when it takes time to set the switching itself, it takes alot of time to complete switching and enable communication. In addition,it is necessary to search for the switching path in advance, and theload of the processing in advance is large.

The invention is made in view of the above circumstances, an object ofthe invention is to provide a technique which can shorten acommunication disabled time during a network failure.

In order to achieve the above object, a network relay device accordingto one aspect relates to a network relay device capable of generating alayer 3 packet from a received layer 2 frame and transmitting thegenerated layer 3 packet, the network relay device including: aplurality of ports which is capable of transmitting and receiving data;a detection unit which detects a failure of a network connected via theports; and a transmission processing unit which generates a plurality oflayer 3 packets from one layer 2 frame received via the port when thefailure of the network is detected by the detection unit, and transmitsthe generated plurality of layer 3 packets to a network via theplurality of ports.

According to the invention, the communication disabled time during thenetwork failure can be shortened.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B are diagrams illustrating an entire configuration of anetwork system and states of the network system according to anembodiment.

FIG. 2 is a diagram illustrating a concept of VXLAN communicationaccording to the embodiment.

FIG. 3 is a diagram illustrating a format of a frame and a packetrelated to the VXLAN according to the embodiment.

FIG. 4 is a functional configuration diagram of a network switchaccording to the embodiment.

FIGS. 5A and 5B are configuration diagrams of an example of an ARP tableaccording to the embodiment.

FIG. 6 is a configuration diagram of an example of a VLAN-VNI tableaccording to the embodiment.

FIG. 7 is a configuration diagram of an example of an FDB tableaccording to the embodiment.

FIG. 8 is a configuration diagram of an example of a learnedencapsulation table according to the embodiment.

FIG. 9 is a configuration diagram of an example of a replication IDtable according to the embodiment.

FIG. 10 is a configuration diagram of an example of a replicationswitching registration table according to the embodiment.

FIG. 11 is a configuration diagram of an example of an unlearnedencapsulation table according to the embodiment.

FIG. 12 is a flowchart of a reception processing according to theembodiment.

FIG. 13 is a flowchart of an encapsulation processing according to theembodiment.

FIG. 14 is a flowchart of a decapsulation processing according to theembodiment.

FIG. 15 is a flowchart of a table updating processing according to theembodiment.

FIG. 16 is a flowchart of a failure handling processing according to theembodiment.

FIG. 17 is a flowchart of a failure time processing according to theembodiment.

DESCRIPTION OF EMBODIMENTS

An embodiment will be described with reference to the drawings. Theembodiment described below does not limit the invention according to theclaims, and all of the elements described in the embodiment and theircombinations are not essential to the solution of the invention.

In the following description, information may be described by theexpression “AAA table”, but the information may be expressed by any datastructure. That is, the “AAA table” may be referred to as “AAAinformation” to indicate that the information does not depend on thedata structure.

In the following description, when the elements of the same type aredescribed without distinction, the reference numerals (or common partsin the reference numerals) are used, and when the elements of the sametype are described separately, the ID of the element (or the referencenumeral of the element) may be used.

FIGS. 1A and 1B are diagrams illustrating an entire configuration of anetwork system and states of the network system according to anembodiment.

A network system 1000 has a ring topology in which a plurality of (forexample, three in FIGS. 1A and 1B) network switches 1 (SW: switches) areconnected in a ring shape. SW1 is an example of a network relay device.In the network system 1000, a layer 2 ring protocol is operating. In alayer 2 network, broadcast, unknown unicast, and multicast (BUM) framesare replicated and relayed to all ports because a transmissiondestination is not uniquely determined. Therefore, when a loop networkis configured, a frame is continuously relayed permanently in the loop.In the present embodiment, a ring protocol logically blockscommunication to ensure redundancy of a communication path, whilelogically eliminating the formation of the loop. Although the ringprotocol is used in the present embodiment as an example, a spanningtree protocol (STP) may also be used. While the STP and the ringprotocol are common in logically blocking communication, there are alsodifferences. In the STP, various topologies such as a mesh topology anda ring topology can be configured, but in the ring protocol, only thering topology can be configured. In addition, the STP takes a long timeto switch paths because there can be a complex topology. Meanwhile,since the ring protocol simplifies the topology, the path switching isfaster than in the STP.

A network 3 in the network system 1000 has a ring topology configurationin which three SW1s (SW#1, SW#2, and SW#3) are connected in a ringshape. One or more terminals 2 can be connected to the SW1. The terminalA and the terminal B are connected to the SW#1, the terminal Cisconnected to the SW#2, and the terminal D is connected to the SW#3. Eachterminal 2 performs communication via the SW1.

In the present embodiment, the SW#3 is set as a master node. The masternode is a device which is a center of ring protocol control. The SW1(SW#1, SW#2) other than the master node in the SW1 which configures thering topology is referred to as a transit node.

Two ports of the SW1 which configures the ring topology are referred toas ring ports. Particularly, two ring ports of the master node arereferred to as a primary port and a secondary port. Here, for example, aport with a small port number automatically serves as the primary port.In addition, the secondary port is a blocking port which logicallyblocks communication at a normal time.

In the network system 1000, by connecting a port1 (upper side in thedrawing) of the SW#1 and a port2 (lower side in the drawing) of theSW#2, connecting a port1 of the SW#2 and a port2 of the SW#3, andconnecting a port1 of the SW#3 and a port2 of the SW#1, the network 3having a ring topology is configured.

In the network system 1000, as illustrated in FIG. 1A, in a normal statewhere no network failure occurs, the port2 of the SW#3, which is themaster node, is a blocking port, and a normal frame which enters theport2 of the SW#3 is discarded. In addition, in the network system 1000,as illustrated in FIG. 1B, for example, at a network failure time when acable between the SW#1 and the SW#2 is broken, the port2 of the SW#3 ischanged from the blocking port to a normal port for frame relay.

The master node (SW#3) transmits and receives a health check frame. Thehealth check frame is a frame for checking whether there is no brokenpart in the ring or whether the network switch 1 cannot be relayed dueto the failure. When receiving the health check frame on the ring port,the transit node (SW#1, SW#2) transmits the health check frame toanother ring port which is a ring port having not received the healthcheck frame. Accordingly, when the network failure does not occur, thehealth check frame transmitted by the master node (SW#3) returns to themaster node via each transit node. Accordingly, the master node cangrasp whether the network failure occurs.

Next, virtual eXtensible local area network (VXLAN) communicationperformed in the network system 1000 will be described.

FIG. 2 is a diagram illustrating a concept of the VXLAN communicationaccording to the embodiment.

In the network system 1000, the VXLAN communication in which theinternet engineering task force (IETF) releases the specification asRFC7348 is realized. VXLAN is a technique for virtually constructing thelayer 2 network on a layer 3 network by encapsulating a layer 2 frame100 (see FIG. 3) to a layer 3 packet. A VXLAN processing unit 4 providedin the SW1 is a terminal of the VXLAN. The layer 2 frame 100 isencapsulated to a VXLAN packet 125 (see FIG. 3, layer 3 packet), and theVXLAN packet 125 is decapsulated to the layer 2 frame 100.

Next, a frame (layer 2 frame 100) and a packet (VXLAN packet 125)related to the VXLAN will be described.

FIG. 3 is a diagram illustrating a format of a frame and a packetrelated to the VXLAN according to the embodiment.

The VXLAN packet 125 illustrated in FIG. 3 is a VXLAN packet defined bythe RFC7348.

The layer 2 frame 100 includes a destination MAC address (Dst MAC Addr)101, a transmission source MAC address (Src MAC Addr) 102, a protocoltype (Ether Type) 103, a VLAN Tag 104, a payload 105, and an FCS 106.The destination MAC address 101 is a MAC address of a device as atransmission source of the frame. The transmission source MAC address102 is a MAC address of a transmission destination device of the frame.The protocol type 103 is information which indicates the type of theprotocol to which the frame corresponds, and is “0×8100” in the exampleof FIG. 3. The VLAN Tag 104 is a Tag of a VLAN. The payload 105 is userdata to be transmitted. The FCS 106 is a frame check sequence (FCS)which indicates a terminal of the frame.

The VXLAN packet 125 includes an Outer MAC Header 107, an Outer IPHeader 108, an Outer UDP Header 109, a VXLAN Header 110, an Original L2Frame 111, and an FCS 112. The Outer MAC Header 107 includes adestination MAC address (Outer Dst MAC Addr) 113, a transmission sourceMAC address (Outer Src MAC Addr) 114, and a protocol type (Ether Type)115. The Outer IP Header 108 includes an IP header (IP header misc) 116,a transmission source IP address (Outer Src IP) 117, and a destinationIP address (Outer Dst IP) 118. The VXLAN Header 110 includes a VNI(VXLAN network identifier) 123 corresponding to the ID of the VXLAN, areserved bit (Reserved) 124, and another identifier (VXLAN misc) 122.The Original L2 Frame 111 includes a destination MAC address 101 (DstMAC Addr), a transmission source MAC address 102 (Src MAC Addr), and apayload 105. The destination MAC address 101, the transmission sourceMAC address 102, and the payload 105 correspond to the contents of thelayer 2 frame 100 before encapsulation or after decapsulation.

Next, the functional configuration of the SW1 will be described indetail.

FIG. 4 is a functional configuration diagram of the network switchaccording to the embodiment.

The SW1 includes two or more ports 200, a forwarding database (FDB)control unit 201, a VXLAN processing unit 4 as an example of atransmission processing unit, a layer 2 ring processing unit 203 as anexample of a detection unit, a CPU 204, an address resolution protocol(ARP) control unit 205, a layer 2 processing unit 215, and a layer 3processing unit 216.

The FDB control unit 201 stores a FDB table 206 and controls a transferdestination according to the destination MAC address. The ARP controlunit 205 stores an ARP table 207, and transmits and receives an ARP toregister, update, and delete the ARP table 207. The layer 2 ringprocessing unit 203 controls a layer 2 ring protocol. Specifically, thelayer 2 ring processing unit 203 transmits and receives a health checkframe, a failure notification frame, and a recovery notification frame.The VXLAN processing unit 4 includes a VLAN-VNI table 214, anencapsulation processing unit 208 as an example of a path informationlearning unit and an address learning unit, and a decapsulationprocessing unit 209. The encapsulation processing unit 208 stores alearned encapsulation table 210, a replication ID table 211, areplication switching registration table 212, and an unlearnedencapsulation table 213, and performs an encapsulation processing toconvert the layer 2 frame 100 into the VXLAN packet 125. Thedecapsulation processing unit 209 performs a decapsulation processing toconvert the VXLAN packet 125 into the layer 2 frame 100. The VLAN-VNItable 214 is a table for managing a mapping between a VNI of the VXLANand a VLANID. The layer 2 processing unit 215 performs processing suchas relaying of the layer 2 frame according to the layer 2. The layer 3processing unit 216 performs processing such as relaying of the VXLANpacket 125 according to the layer 3. The CPU 204 controls the entireSW1.

FIGS. 5A and 5B are configuration diagrams of an example of the ARPtable according to the embodiment.

Here, an IP address is assigned to each VXLAN processing unit 4 providedin each SW1 of the network system 1000 illustrated in FIGS. 1A and 1B.In addition, an IP address of a VXLAN processing unit #1 of the SW#1will be described as IP1, and the MAC address thereof will be describedas MAC1. An IP address of the VXLAN processing unit #2 of the SW#2 willbe described as IP2, and the MAC address thereof will be described asMAC2. An IP address of the VXLAN processing unit #3 of the SW#3 will bedescribed as IP3, and the MAC address thereof will be described as MAG3.The IP addresses are IP1, IP2 and IP3 for convenience, but specifically,in the case of IPv4, the notation is 192.168.1.1.

FIG. 5A illustrates the ARP table 207 of each SW1 when the networksystem 1000 is in the normal state illustrated in FIG. 1A. FIG. 5Billustrates the ARP table 207 of each SW1 when the network system 1000is in the failure state illustrated in FIG. 1B, and an ARP re-resolutionis performed and updated after the failure occurs.

The ARP table 207 includes columns of an IP address 207 a, a MAC address207 b, and an output port 207 c. The IP address 207 a stores an IPaddress of the SW1 as a relay destination. The MAC address 207 b storesa MAC address of a destination device. The output port 207 c stores anID (identifier) of the port 200 used for communication to thedestination.

When the network system 1000 is in the normal state illustrated in FIG.1A, according to the ARP table 207 of the SW#1 illustrated in FIG. 5A,it indicates that the destination MAC address may be output from theport2 as the MAC2 in the case of relaying to the IP2 in the SW#1.

In addition, when the network system 1000 is in the failure stateillustrated in FIG. 1B, according to the ARP table 207 of the SW#1illustrated in FIG. 5B, it indicates that the destination MAC addressmay be output from the port1 as the MAC2 in the case of relaying to theIP2 in the SW#1. The operation of the ARP and the creation of the ARPtable 207 are defined by RFC826.

FIG. 6 is a configuration diagram of an example of the VLAN-VNI tableaccording to the embodiment.

The VLAN-VNI table 214 is a table used to map a VLANID of the layer 2 tothe VNI of the VXLAN when encapsulation and decapsulation of the VXLANis performed, and includes a VLANID 214 a and a VNI 214 b in a column.The VLANID 214 a stores the VLANID. The VNI 214 b stores a VNIcorresponding to the VLANID of the same row (entry). In the example ofFIG. 6, when the VLANID is “VID1”, the VNI is “VNI1”, and when theVLANID is “VID2”, the VNI is “VNI2”. The VLAN-VNI table 214 isregistered, for example, by the administrator of the SW1.

FIG. 7 is a configuration diagram of an example of the FDB tableaccording to the embodiment.

The FDB table 206 includes columns of a MAC address 206 a, a VNI 206 b,a destination processing unit IP address 206 c, and an output port 206d. The MAC address 206 a stores a MAC address of a device to becommunicated. The VNI 206 b stores the VNI corresponding to the VLAN towhich the device of the same row (entry) belongs. The destinationprocessing unit IP address 206 c stores an IP address of the VXLANprocessing unit 4 as a destination. The output port 206 d stores an IDof a port to be used when communicating with a device in the same row.For example, in layer 2 frame relaying, when the destination MAC addressis registered in the FDB table 206, it is transmitted toward theregistered reception port, while when the destination MAC address is notregistered (when it is unlearned), it is transmitted to a bi-directionalport of the ring port. The FDB table 206 corresponds to transmissiondestination address information.

FIG. 8 is a configuration diagram of an example of the learnedencapsulation table according to the embodiment.

The learned encapsulation table 210 is a table (unicast encapsulationtable) which is referred to when performing a learned unicastencapsulation, and includes columns of a destination IP address 210 a, adestination MAC address 210 b, and an output port 210 c. The destinationIP address 210 a stores an IP address (destination IP address) of adestination device. A destination IP address of the destination IPaddress 210 a is registered when the administrator of the SW1 registersconnection (tunnel) information between the VXLAN processing units 4.The example of FIG. 8 illustrates the learned encapsulation table 210 inthe VXLAN processing unit #1 of the SW#1. It illustrates a state wherethe administrator registers to connect with the IP address (IP2) of theVXLAN processing unit #2 and the IP address (IP3) of the VXLANprocessing unit #3. The destination MAC address 210 b stores the MACaddress corresponding to the destination IP address of the device in thesame row. The output port 210 c stores the ID of the port to be usedwhen outputting to the device in the same row. For example, after theadministrator registers the destination IP address in the destination IPaddress 210 a of the learned encapsulation table 210, the VXLANprocessing unit 4 searches for the ARP table 207 using the destinationIP address, and registers the obtained searched result (MAC address andoutput port) in the destination MAC address 210 b and the output port210 c. In addition, the VXLAN processing unit 4 updates the learnedencapsulation table 210 also at the timing when the ARP table 207 isupdated. An entry of the learned encapsulation table 210 is an exampleof layer 3 packet path information.

FIG. 9 is a configuration diagram of an example of the replication IDtable according to the embodiment.

The replication ID table 211 is a table which is referred to when thelayer 2 frame 100 is received, and stores information which specifies areplication for each VNI. The replication ID table 211 includes columnsof a VNI 211 a and a replication ID 211 b. The VNI 211 a stores a VNIrelated to the SW1. The replication ID 211 b stores an ID (replicationID) which indicates a replication during relaying in the VXLAN indicatedby the VNI in the same row. The same value as a value of the VNI 214 bis registered in the VNI 211 a based on the registration of the VNI inthe VNI 214 b of the VLAN-VNI table 214 by the administrator of the SW1,and at the same time, the replication ID is stored in the replication ID211 b. The replication ID stored in the replication ID 211 b may be anyvalue as long as it is a unique value in the replication ID table 211.According to the state of the ring, the replication ID 211 b includesthe value of either a normal time replication ID 212 b or a failure timereplication ID 212 c of the VNI corresponding to the replicationswitching registration table 212 described later. The replication IDstored in the replication ID 211 b corresponds to reference destinationinformation.

FIG. 10 is a configuration diagram of an example of the replicationswitching registration table according to the embodiment.

The replication switching registration table 212 includes columns of aVNI 212 a, the normal time replication ID 212 b, and the failure timereplication ID 212 c. The VNI 212 a stores a VNI of the VLAN to betransmitted. In the normal time replication ID 212 b, a replication IDwhich indicates a replication at the normal time is stored for the VNIof the VLAN in the same row. In the failure time replication ID 212 c, areplication ID which indicates a replication at the failure time isstored for the VNI of the VLAN in the same row.

Each of the columns 212 a, 212 b, and 212 c in the replication switchingregistration table 212 is registered based on the registration of theVNI in the VLAN-VNI table 214 by the administrator of the SW1. The samevalue as the VNI 214 b in the VLAN-VNI table 214 is registered in theVNI 212 a of the replication switching registration table 212. A uniquevalue is registered in the normal time replication ID 212 b and thefailure time replication ID 212 c in the replication switchingregistration table 212.

FIG. 11 is a configuration diagram of an example of the unlearnedencapsulation table according to the embodiment.

The unlearned encapsulation table 213 is a table which is referred towhen relaying a frame (unlearned frame) for a destination in which therelay destination is not learned as the VXLAN packet 125 or the layer 2frame 100 as it is, and includes columns of a replication ID 213 a, adestination IP address 213 b, a destination MAC address 213 c, and anoutput port 213 d. The unlearned encapsulation table 213 has one or moregroups of rows for each replication ID. The replication ID 213 a storesa replication ID which indicates a replication. The destination IPaddress 213 b stores an IP address to be the destination of atransmission data unit (packet or frame) in the replication in the samerow (entry). The destination MAC address 213 c stores a MAC address ofthe destination device in the replication of the entry. The output port213 d stores an ID of a port which outputs the packet or the frame inthe replication of the entry. An entry whose value is registered in thedestination IP address 213 b and the destination MAC address 213 c ofthe unlearned encapsulation table 213 corresponds to unlearnedinformation, an entry associated with a failure time replication IDcorresponds to failure time port information, and an entry associatedwith a normal time replication ID corresponds to normal time portinformation.

In the unlearned encapsulation table 213 of FIG. 11, a replication groupin which the replication ID 213 a is “id1” represents that the id2 isreplicated and relayed to four transmission data units. When the valuesare registered in the destination IP address 213 b and the destinationMAC address 213 c, it represents that the layer 2 frame 100 isencapsulated to a VXLAN packet and relayed, and when no value isregistered in the destination IP address 213 b and the destination MACaddress 213 b, it represents that the layer 2 frame 100 is relayed as itis.

The processing operation of the encapsulation processing unit 208 whenan entry is registered in the unlearned encapsulation table 213 will bedescribed, and in the entry, the value of the replication ID 213 a is avalue registered in the normal time replication ID 212 b of thereplication switching registration table 212.

For the VNI of the VXLAN corresponding to the replication to beprocessed, the encapsulation processing unit 208 registers an entry suchthat each IP address of the VXLAN processing unit 4 for which theadministrator of the SW1 permits the relay with another VXLAN processingunit 4 is included in the destination IP address 213 b. Here, it isassumed that the administrator of the SW1 stores the IP address of theVXLAN processing unit 4 in which the relay with another VXLAN processingunit 4 is permitted in the VXLAN processing unit 4 in advance for eachVNI.

For example, when the replication ID 213 a is “id1”, the “VNI1” isspecified by referring to the replication switching registration table212 using the “id1”. Here, when it is assumed that the administrator ofthe SW1 performs setting of the relaying of the “VNI1” between the VXLANprocessing units 4 of the IP addresses “IP2” and “IP3”, the IP addresses“IP2” and “IP3” stored corresponding to the “VNI1” are specified, andthe “IP2” and the “IP3” are respectively set in the destination IPaddress 213 b for different entries.

Next, the encapsulation processing unit 208 searches for the MAC addressand output port corresponding to the “IP2” and the “IP3” respectivelywith reference to the ARP table 207, and registers the search results ofthe MAC address and output port in the destination MAC address 213 c andoutput port 213 d of the corresponding entry. In addition, theencapsulation processing unit 208 obtains the “VID1” corresponding tothe “VNI1” corresponding to the “id1” with reference to the VLAN-VNItable 214. Further, the encapsulation processing unit 208 inquires ofthe layer 2 ring processing unit 203 about the port to which the “VID1”is set, and registers a port ID obtained by the inquiry in the outputport 213 d of the corresponding entry. The layer 2 ring processing unit203 stores the VLANID and the port ID of the port 200 set in the VLANIDin association with each other.

Accordingly, in the unlearned encapsulation table 213, when thereplication ID is “id1”, it is encapsulated to the VXLAN packet 125 andrelayed to the destination IP addresses “IP2” and “IP3”, and an entrywhich indicates that the layer 2 frame 100 is to be replicated andrelayed to “port3” and “port4” is registered. However, in thereplication, it is assumed that the layer 2 frame 100 is not relayedback to the port 200 to which the layer 2 frame 100 is input. Forexample, when the layer 2 frame 100 is input from the “port3”, the layer2 frame 100 is replicated and relayed only to the “port 4” withoutrelaying back to the “port3”.

Next, the processing operation of the encapsulation processing unit 208when an entry is registered in the unlearned encapsulation table 213will be described, and in the entry, the value of the replication ID 213a is the value registered in the failure time replication ID 212 c ofthe replication switching registration table 212.

The encapsulation processing unit 208 specifies a replication ID (normaltime replication ID) of the normal time replication ID 212 b in thereplication switching registration table 212 associated with areplication ID (failure time replication ID) of the replication ID 213 a(associated with the same entry), and sets the entry of the failure timereplication ID of the replication ID 213 a in the unlearnedencapsulation table 213 to be the same content as the entry of thenormal time replication ID. For example, when the replication ID 213 ais “id3”, the values of the destination IP address 213 b, thedestination MAC address 213 c, and the output port 213 d in the entry ofthe unlearned encapsulation table 213 having the corresponding “id1” asthe replication ID are copied to the corresponding columns of each entryin which the replication ID 213 a is “id3”.

Next, in the entry which indicates encapsulation to the VXLAN packet125, when the port ID of the output port 213 d is a ring port, theencapsulation processing unit 208 additionally registers, as an entryfor encapsulating to the VXLAN packet 125, a new entry in which thevalue of the output port 213 d is changed to a ring port forming a pairthis ring port. Specifically, when the replication ID 213 a is “id3”,since there is an entry in which the “IP2”, the “MAC2”, and the “port2”are set in the destination IP address 213 b, the destination MAC address213 c, and the output port 213 c as an entry which indicatesencapsulation to the VXLAN packet 125, this entry is left as it is, anda new entry in which the value of the output port 213 c is changed tothe “port1” forming a pair with the “port2” is additionally registered.Similarly, since there is an entry in which the “IP3”, the “MAG3”, andthe “port1” are set in the destination IP address 213 b, the destinationMAC address 213 c, and the output port 213 c as an entry which indicatesencapsulation to the VXLAN packet 125, this entry is left as it is, anda new entry in which the value of the output port 213 c is changed tothe “port2” forming a pair with the “port1” is additionally registered.

Accordingly, as an entry associated with the failure time replicationID, the encapsulated VXLAN packet 125 is output via a plurality ofdifferent ports (in the example, two ring ports to be paired) for thesame destination IP address and the same destination MAC address.

Next, the processing operation in the SW1 will be described.

FIG. 12 is a flowchart of a reception processing according to theembodiment.

When communication data is received via the port 200, the VXLANprocessing unit 4 of the SW1 determines whether the communication datais a VXLAN packet addressed to the own device (S11). Specifically, asfor whether the communication data is the VXLAN packet addressed to theown device, the VXLAN processing unit 4 determines whether thecommunication data is a UDP/IP packet, whether the destination MACaddress 113 of the packet is addressed to the own device (MAC address ofSW1), whether a destination UDP port number 120 is a port number (forexample, “4789”) allocated to the VXLAN.

As a result, when the communication data is a VXLAN packet addressed tothe own device (S11: Yes), the VXLAN processing unit 4 performs adecapsulation processing (see FIG. 14) (S13). Meanwhile, when thecommunication data is not a VXLAN packet addressed to the own device,that is, when the communication data is the layer 2 frame 100 or a VXLANpacket addressed to other device than the own device (S11: No), theVXLAN processing unit 4 performs an encapsulation processing (see FIG.13) (S12).

FIG. 13 is a flowchart of the encapsulation processing according to theembodiment. The encapsulation processing corresponds to the processingof step S12 in FIG. 12.

The VXLAN processing unit 4 refers to a VLANID in the VLAN Tag 104 ofthe received data (layer 2 frame 100 or VXLAN packet 125) to search theVLAN-VNI table 214 using this VLANID (S21). As a result of this search,when the VLANID is not registered in the VLAN-VNI table 214 (S21: miss),it means that it is not the communication data for the VXLAN managed bythe own device, so that the VXLAN processing unit 4 causes the layer 2processing unit 215 or the layer 3 processing unit 216 to perform theexisting layer 2 processing or layer 3 processing (S22), and ends theprocessing.

Meanwhile, when the VLANID is registered in the VLAN-VNI table 214 (S21:hit), the VXLAN processing unit 4 registers information of the layer 2frame 100 in the FDB table 206 (S23: FDB table registration during theencapsulation). Specifically, the VXLAN processing unit 4 stores thetransmission source MAC address 102 of the layer 2 frame 100 in the MACaddress 206 a, stores the VNI obtained by searching the VLAN-VNI table214 using the VLANID in the VNI 206 b, and adds, to the FDB table 206,an entry in which a port number of a port which receives the layer 2frame 100 is stored in the output port 206 d. When there is an entryhaving the same content in the FDB table 206, the VXLAN processing unit4 does not add the entry to the FDB table 206. For example, when a layer2 frame 100 in which the transmission source MAC address 102 is “MAC4”and the VLANID is “VID1”is received from the port 200 of “port2”, anentry in the third row in the FDB table 206 illustrated in FIG. 7 isregistered. In the entry added in the processing of step S23, nothing isregistered in the destination processing unit IP address 206 c.

Next, the VXLAN processing unit 4 searches the FDB table 206 (S24).Specifically, the VXLAN processing unit 4 searches whether a combinationof the destination MAC address 101 of the layer 2 frame 100 and the VNIobtained by the search is registered in the FDB table 206.

As a result, when an entry of the combination of the destination MACaddress 101 and the VNI is found in the FDB table 206 (S24: hit), theVXLAN processing unit 4 determines whether an IP address is set in thedestination processing unit IP address 206 c of the found entry (S25).

As a result, when the IP address is set in the destination processingunit IP address 206 c of the found entry (S25: Yes), the VXLANprocessing unit 4 performs learned encapsulation and relay processing(S26).

Here, the learned encapsulation and relay processing will be describedusing a case of receiving the layer 2 frame 100 as an example, in whichthe VLAN-VNI table 214, the FDB table 206 and the learned encapsulationtable 210 are in the states illustrated in FIGS. 6 to 8, the destinationMAC address 101 is “MAC2”, and the VLANID in the VLAN Tag 104 is “VID1”.

When the layer 2 frame 100 is received, in step S21, the VNIcorresponding to “VID1” is searched as “VNI1”, in step S24, thecombination of “MAC2” and “VNI1” is searched from the FDB table 206, andan entry in the first row of FIG. 7 is searched, and in step S25, it isdetermined that “IP2” is set as the IP address in the destinationprocessing unit IP address 206 c.

In this case, the VXLAN processing unit 4 encapsulates the layer 2 frame100 to generate the VXLAN packet 125, as described below. At this time,the VXLAN processing unit 4 searches the learned encapsulation table 210using “IP2” set in the destination processing unit IP address 206 c,sets “IP2” as a destination IP address 118 of the VXLAN packet 125, andsets the value (“MAC2”) of the destination MAC address 210 b of theentry in the learned encapsulation table 210 obtained by the search asthe destination MAC address 113 of the VXLAN packet 125. In addition,the VXLAN processing unit 4 sets the IP address (“IP1”) of the VXLANprocessing unit 4 as the transmission source IP address 117 of the VXLANpacket 125, and sets the MAC address (“MAC1”) of the VXLAN processingunit 4 as the transmission source MAC address 114. Further, the VXLANprocessing unit 4 sets the VNI value of the search result of theVLAN-VNI table 214 as a VNI123 of the VXLAN packet 125, and sets “4789”as a destination port 120 of the VXLAN packet 125. Thereafter, the VXLANprocessing unit 4 transmits the generated VXLAN packet 125 via the port200 as an ID of the output port 210 c of the entry in the learnedencapsulation table 210.

Meanwhile, when the IP address is not set in the destination processingunit IP address 206 c of the found entry (S25: No), the VXLAN processingunit 4 performs a learned relay processing in which the layer 2 frame100 is transmitted via the port 200 as the ID set in the output port 206d of the entry (S27).

Meanwhile, in step S24, when the entry of the combination of thedestination MAC address 101 and the VNI is not found in the FDB table206 (S24: miss), the unlearned encapsulation and relay processing areperformed (S28). In the unlearned encapsulation and relay processing,the VXLAN processing unit 4 replicates the layer 2 frame 100 to aplurality of layer 2 frames 100, encapsulates a part of the layer 2frames 100 to VXLAN packets 125 and transmits the packets respectively,and transmits the remaining layer 2 frames 100 as they are.

Here, the unlearned encapsulation and relay processing will be describedusing a case of receiving the layer 2 frame 100 as an example, in whichthe VLAN-VNI table 214, the replication ID table 211, and the unlearnedencapsulation table 213 are in the states illustrated in FIGS. 6, 9 and11, the destination MAC address 101 is “MAC2”, and the VLANID in theVLAN Tag 104 is “VID1”. It is assumed that the entry of the combinationof the destination MAC address 101 and the VNI is not found in the FDBtable 206.

The VXLAN processing unit 4 refers to the replication ID table 211 usingthe VNI to search for the replication ID. As a result, when thereplication ID (“id1”) is detected (at the normal time), the VXLANprocessing unit 4 uses the replication ID (“id1”) to search theunlearned encapsulation table 213. Accordingly, four entries from thefirst to the fourth row in which the replication ID 213 a of theunlearned encapsulation table 213 in FIG. 11 is “id1” are specified.

Next, the VXLAN processing unit 4 replicates the layer 2 frame 100.Next, the VXLAN processing unit 4 uses the entry in the first rowcorresponding to the destination MAC address “MAC2” to encapsulate onelayer 2 frame 100 to the VXLAN packet 125 and transmits the packet fromthe “port2”, transmits one layer 2 frame 100 from the “port3” based onthe entry in the third row, and transmits one layer 2 frame 100 from the“port4” based on the entry in the fourth row.

Meanwhile, with reference to the replication ID table 211 using the VNI,the VXLAN processing unit 4 uses the replication ID (“id3”) to searchthe unlearned encapsulation table 213 when the replication ID (“id3”) isdetected, that is, when immediately after the network failure occurs inthe ring. Accordingly, six entries in which the replication ID 213 a ofthe unlearned encapsulation table 213 in FIG. 11 is “id3” are specified.

Next, the VXLAN processing unit 4 replicates the layer 2 frame 100.Next, the VXLAN processing unit 4 uses the first entry corresponding tothe destination MAC address “MAC2” to encapsulate one layer 2 frame 100to the VXLAN packet 125 and transmits the packet from the “port2”,transmits one layer 2 frame 100 from the “port3” based on the thirdentry, and transmits one layer 2 frame 100 from the “port4” based on thefourth entry. Further, the VXLAN processing unit 4 uses the fifth entrycorresponding to the destination MAC address “MAC2” to encapsulate onelayer 2 frame 100 to the VXLAN packet 125 and transmits the packet fromthe “port1”.

As a result, the VXLAN packet 125 in which the destination IP address isset as “IP2” and the destination MAC address is set as “MAC2” can betransmitted in both directions of the “port1” and the “port2” forming apair with “port1”, which form a ring port. Accordingly, even when a partof the network 3 having a ring topology is blocked, the VXLAN packet 125can be transmitted to a desired transmission destination device.

FIG. 14 is a flowchart of the decapsulation processing according to theembodiment. The decapsulation processing corresponds to the processingin step S13 in FIG. 12.

The VXLAN processing unit 4 registers information of the received data(that is, the VXLAN packet 125) of the layer 2 frame 100 in the FDBtable 206 (S33: FDB table registration during the decapsulation).Specifically, the VXLAN processing unit 4 stores the transmission sourceMAC address 114 of the VXLAN packet 125 in the MAC address 206 a, storesthe VNI123 in the VNI 206 b, and adds, to the FDB table 206, an entry inwhich the destination IP address 118 is stored in the destination IPaddress 206 c. When there is an entry having the same content in the FDBtable 206, the VXLAN processing unit 4 does not add the entry to the FDBtable 206. For example, when a VXLAN packet 125 in which thetransmission source MAC address 114 is “MAC2”, the VLANID is “VID1”, andthe transmission destination IP address is “IP2” is received, an entryin the first row of the FDB table 206 illustrated in FIG. 7 isregistered. In the entry added in the processing of step S33, nothing isregistered in the output port 206 d.

Next, the VXLAN processing unit 4 searches the FDB table 206 (S34).Specifically, the VXLAN processing unit 4 searches whether thecombination of the destination MAC address 101 of the VXLAN packet 125and the VNI of the VNI123 is registered in the FDB table 206.

As a result, when the entry of the combination of the destination MACaddress 101 and the VNI is found in the FDB table 206 (S34: hit), theVXLAN processing unit 4 performs learned decapsulation and relayprocessing (S35). Specifically, the VXLAN processing unit 4 decapsulatesthe VXLAN packet 125 to generate the layer 2 frame 100, and transmitsthe layer 2 frame 100 to the port 200 as an ID of the output port 206 dof the found entry in the FDB table 206.

Meanwhile, when the entry of the combination of the destination MACaddress 101 and the VNI is not found in the FDB table 206 (S34: miss),the VXLAN processing unit 4 performs the unlearned decapsulation andrelay processing (S36).

Here, the unlearned encapsulation and relay processing will be descriedusing a case of receiving the VXLAN packet 125 as an example, in whichthe VLAN-VNI table 214, the replication ID table 211, and the unlearnedencapsulation table 213 are in the states illustrated in FIGS. 6, 9 and11, the destination MAC address 101 is “MAC2”, and the VNI is “VNI1”. Itis assumed that the entry of the combination of the destination MACaddress 101 and the VNI is not found in the FDB table 206.

The VXLAN processing unit 4 refers to the replication ID table 211 usingthe VNI to search for the replication ID. As a result, the VXLANprocessing unit 4 uses the replication ID (“id1”) to search theunlearned encapsulation table 213 when the replication ID (“id1”) isdetected. Accordingly, four entries from the first to the fourth row inwhich the replication ID 213 a of the unlearned encapsulation table 213in FIG. 11 is “id1” are specified.

Next, the VXLAN processing unit 4 decapsulates the VXLAN packet 125 togenerate the layer 2 frame 100, replicates this layer 2 frame andtransmits one layer 2 frame 100 from the “port3” based on the thirdentry in which the destination IP address 213 b is not set, andtransmits one layer 2 frame 100 from the “port4” based on the fourthentry.

FIG. 15 is a flowchart of a table updating processing according to theembodiment.

The table updating processing is performed when the ARP table 207 isregistered or updated.

When the ARP table 207 is updated, the encapsulation processing unit 208of the VXLAN processing unit 4 sets and updates the learnedencapsulation table 210 (S41). Next, the encapsulation processing unit208 sets and updates the entry corresponding to the normal timereplication ID in the unlearned encapsulation reference table 213 (S42).Next, when the encapsulation processing unit 208 does not detect afailure in the ring network 3 by the layer 2 ring processing unit 203(S43: normal), the encapsulation processing unit 208 sets and updatesthe entry corresponding to the failure time replication ID in theunlearned encapsulation table 213 (S44). Meanwhile, when a failure isdetected in the ring by the layer 2 ring processing unit 203 or thelayer 2 ring processing unit 203 is not operating (S43: failure, ringinvalid), the encapsulation processing unit 208 ends the processingwithout setting and updating the entry corresponding to the failure timereplication ID.

FIG. 16 is a flowchart of a failure handling processing according to theembodiment.

The failure handling processing is performed by the master node. Forexample, as illustrated in FIGS. 1A and 1B, when the network 3 having aring topology is configured by three SW1s, the processing is performedby the SW#3 which is a master node. The failure handling processing willbe described below by taking the configuration illustrated in FIG. 1B asan example.

The layer 2 ring processing unit 203 of the master node (SW#3) transmitsthe health check frame from both the port1 and the port2, whichconfigure a ring, at a constant cycle, for example, a cycle of 10 ms(S1). When receiving the health check frame, the transit nodes (SW#1,SW#2) transmit the received health check frame to a ring port other thanthe ring port which has received the health check frame. For example, inthe configuration of FIGS. 1A and 1B, when the SW#1 receives a checkframe from the port1, the SW#1 transmits the check frame to the port2,and when the SW#1 receives a check frame from the port2, the SW#1transmits the check frame to the port1.

Next, the master node (SW#3) determines whether a ring failure of thelayer 2 (L2) occurs (S2). Specifically, when the health check frametransmitted by the master node returns to the master node, it isdetermined that the ring failure does not occur (normal state).Meanwhile, in a state where the health check frame does not return tothe master node, for example, when the health check is continuouslytransmitted in a cycle of 10 ms, but the health check does not return tothe master node even 30 ms after the last health check is received, themaster node determines that the ring failure occurs.

As a result, when it is determined that a ring abnormality does notoccur (S2: No), the master node proceeds the processing to step S1.

Meanwhile, when it is determined that the ring abnormality occurs (S2:Yes), the master node transmits the failure notification frame from theprimary port (port1) and the secondary port (port2) (S3). Afterreceiving the failure notification frame, the transit node performs afailure time processing (see FIG. 17).

Next, the master node releases the blocking port and enables relaying ofdata using the primary port (port1) and the secondary port (port2) (S4).Next, the master node clears the FDB table 206 (clears the entry in theFDB table 206: the same applies) (S5), and starts performing the failuretime processing (see FIG. 17) described later.

Next, the master node transmits the health check frame from both theport1 and the port2 which configure a ring again at a constant cycle,for example, the cycle of 10 ms (S6). Next, it is determined whether themaster node recovers from the failure state (S7).

As a result, when it is determined that the master node does not recoverfrom the failure state, that is, when the health check frame does notreturn (S7: No), the master node proceeds the processing to step S6.

Meanwhile, when it is determined that the master node recovers from thefailure state (S7: Yes), the master node transmits a failure recoverynotification frame from the port1 and the port2 (S8). After receivingthe failure recovery notification frame, the transit node clears the FDBtable 206. Accordingly, the path information learned during the failurecan be cleared.

Next, the master node sets a block point to the port2 (S9), clears thepath information during the failure by clearing the FDB table 206 (S10),and proceeds the processing to step S1.

FIG. 17 is a flowchart of the failure time processing according to theembodiment.

The failure time processing is performed by the master node in step S5of the failure handling processing, and is performed by the transit nodewhen the failure notification frame is received.

First, the encapsulation processing unit 208 of the SW1 clears the FDBtable 206 to prevent the learning of the FDB table 206 (S51). Byclearing the FDB table 206, it is possible to delete the pathinformation in a state where the failure does not occur, and to performrelaying of the communication data in a path where transmission is notperformed when the failure occurs. For example, in the normal state ofFIG. 1A, when the terminal A communicates with the terminal C,communication is performed from the SW#1 via the SW#2, while in thefailure state of FIG. 1B, relaying cannot be performed from the SW#1 tothe SW#2, but communication can be performed via the SW#1 to the SW#3,then to the SW#2.

By preventing the learning of the FDB table 206 only for the VXLANpacket from the opposing (directly connected) VXLAN processing unit 4,the learning of the FDB table 206 for communication data with otherdevices may not be prevented. In this way, after clearing the FDB table206 by a communication failure in the ring, only learning of the packetfrom the opposing VXLAN processing unit 4 is prevented, and the MACaddress of the device (terminal 2) connected under the own VXLANprocessing unit 4 is learned, so that communication between theterminals 2 under the own VXLAN processing unit 4 can be learned, andthe unlearned encapsulation and relay processing (S28) can be performedonly for communication with the opposing VXLAN processing unit 4. Thatis, it is possible to prevent processing of relaying data by unnecessaryreplication rather than preventing the learning of the FDB table 206 forall.

Next, the encapsulation processing unit 208 rewrites the replication IDof the replication ID 211 b in the replication ID table 211 into thereplication ID (failure time replication ID) of the failure timereplication ID 212 c in the replication switching registration table 212(S52). Accordingly, in the unlearned encapsulation and relay processing(S28), the VXLAN packet 125, which is transmitted to a layer 3 relaypath ARP-resolved by the ARP table 207 before the failure occurs, can beadded to the layer 3 relay path and can be transmitted to the portsforming a ring port. That is, the relay operation of the layer 3 can betemporarily made similar to that of the layer 2. By performing thisstep, the communication of the VXLAN packet is recovered. The processingtime required for rewriting the replication ID in this step can belimited to the read time for the replication ID registered in thefailure time replication ID 212 c in the replication switchingregistration table 212 and the write time of the replication ID to thereplication ID 211 b in the replication ID table 211, and is arelatively short time. The corresponding relationship between the normaltime replication ID and the failure time replication ID is always fixed.For example, the value of the normal time replication ID is 1 to 4,000,and the value of the failure time replication ID is 10,001 to 14,000. Ifit is decided to correspond to each replication ID in an ascendingorder, the processing time required for rewriting the replication ID canbe limited to only the write time of the failure time replication ID inthe replication ID 211 b in the replication ID table 211.

Next, the encapsulation processing unit 208 determines whetherre-learning of an encapsulation path is completed (S53), that is,whether re-learning of the ARP table 207 when the failure occurs, andupdate of the entries corresponding to the learned encapsulation table210 and the normal time replication ID of the unlearned encapsulationtable 213 are all completed. As a result, when the re-learning of theencapsulation path is not completed (S53: not complete), theencapsulation processing unit 208 proceeds the processing to step S53and waits until the re-learning is completed.

Meanwhile, when the re-learning of the encapsulation path is completed(S53: complete), the encapsulation processing unit 208 rewrites thereplication ID of the replication ID table 211 into the normal timereplication ID (S54). Accordingly, the switching of the relay path ofthe layer 3 is completed according to the failure of the layer 2.

Next, the encapsulation processing unit 208 releases the prevention ofthe learning of the FDB table 206 (S55), and ends the processing.Accordingly, the operation in which the encapsulation to the VXLANpacket after the reception of the failure notification frame is limitedto only the unlearned encapsulation and relay processing (S28) can beperformed such that the learned encapsulation and relay processing (S26)can also be operated.

The invention is not limited to the above embodiment, and can beappropriately modified and implemented without departing from the spiritof the invention.

For example, in the above embodiment, in step S51 of the failure timeprocessing, the entire path information (all entries) in the FDB table206 is cleared to shorten the processing time for clearing, but theinvention is not limited to this, for example, only the entry related tothe transmission of the VXLAN packet in the FDB table 206 (that is, theentry in which the IP address is set) may be cleared. In this way, withregard to communication data other than the VXLAN packet, it is possibleto prevent unnecessary processing related to data replication andrelaying by using the path information as it is before the failureoccurs.

In addition, in the above embodiment, part or all of the processingperformed by the FDB control unit 201, the VXLAN processing unit 4, thelayer 2 ring processing unit 203, the ARP control unit 205, the layer 2processing unit 215, and the layer 3 processing unit 216 may be realizedby the CPU 204 performing a program. This program may be installed froma program source. The program source may be a program distributionserver or storage medium (for example, portable storage medium).

What is claimed is:
 1. A network relay device capable of generating alayer 3 packet from a received layer 2 frame and transmitting thegenerated layer 3 packet, the network relay device comprising: aplurality of ports which is capable of transmitting and receiving data;a detection unit which detects a failure of a network connected via theports; and a transmission processing unit which generates a plurality oflayer 3 packets from one layer 2 frame received via the ports when thefailure of the network is detected by the detection unit, and transmitsthe generated plurality of layer 3 packets to a network via theplurality of ports.
 2. The network relay device according to claim 1,further comprising a path information learning unit which learns a portvia which the layer 3 packet should be output to each destination whenthe failure of the network occurs, and stores the port as layer 3 packetpath information, wherein the transmission processing unit generates onelayer 3 packet from one received layer 2 frame, specifies the port viawhich the layer 3 packet should be output based on the layer 3 packetpath information, and transmits the generated layer 3 packet to thespecified port when learning of the layer 3packet path information bythe path information learning unit is completed.
 3. The network relaydevice according to claim 2, further comprising an address learning unitwhich learns an IP address corresponding to a MAC address based on thereceived layer 2 frame, and stores the IP address as transmissiondestination address information, wherein the transmission processingunit specifies a port corresponding to the IP address which is learnedbased on the layer 3 packet path information when an IP address of atransmission destination of the received layer 2 frame is learned in thetransmission destination address information, and the address learningunit prevents learning of the IP address when the failure is detected.4. The network relay device according to claim 3, wherein the addresslearning unit releases the prevention of the learning of the IP addresswhen the learning of the layer 3 packet path information by the pathinformation learning unit is completed.
 5. The network relay deviceaccording to claim 4, wherein the address learning unit deletes alearning content of the transmission destination address informationwhen the failure is detected.
 6. The network relay device according toclaim 5, wherein the detection unit detects a recovery from the failureof the network, and the address learning unit deletes the learningcontent of the transmission destination address information when therecovery from the failure is detected.
 7. The network relay deviceaccording to claim 3, wherein unlearned information which indicates theport via which the layer 3 packet should be output is stored when the IPaddress of the transmission destination of the layer 2 frame is notlearned in the transmission destination address information, and thetransmission processing unit performs transmission via the port viawhich the layer 3 packet should be output based on the unlearnedinformation when the IP address of the transmission destination of thereceived layer 2 frame is not learned.
 8. The network relay deviceaccording to claim 7, wherein the unlearned information includes failuretime port information which indicates a plurality of ports via which thelayer 3 packet should be output when a failure occurs in the network,and normal time port information which indicates a port via which thelayer 3 packet should be output at other times, and the transmissionprocessing unit performs transmission to a plurality of ports via whichthe layer 3 packet should be output based on the failure time portinformation when the failure of the network is detected by the detectionunit and when the IP address of the transmission destination of thereceived layer 2 frame is not learned.
 9. The network relay deviceaccording to claim 8, wherein reference destination information whichindicates any one of the failure time port information and the normaltime port information in the unlearned information is stored, thetransmission processing unit uses the reference destination informationto refer to the failure time port information or the normal time portinformation from the unlearned information, and the transmissionprocessing unit sets the reference destination information whichindicates the failure time port information as the reference destinationinformation when the failure of the network is detected by the detectionunit.
 10. The network relay device according to claim 1, wherein thenetwork relay device is connected to another network relay device toconfigure a ring network, the detection unit detects a failure of thering network, and the transmission processing unit generates two layer 3packets from one layer 2 frame received via the port, and transmits thetwo generated layer 3 packets via two ports connected to other twonetwork relay devices which configure the ring network.
 11. A networkrelay method to be performed by a network relay device capable ofgenerating a layer 3 packet from a received layer 2 frame andtransmitting the generated layer 3 packet, and the network relay deviceincluding a plurality of ports which is capable of transmitting andreceiving data, the network relay method comprising: detecting a failureof a network connected via the port; generating a plurality of layer 3packets from one layer 2 frame received via the port when the failure ofthe network is detected; and transmitting the generated plurality oflayer 3 packets to the network via the plurality of ports.
 12. A networkrelay program to be performed by a computer which configures a networkrelay device capable of generating a layer 3 packet from a receivedlayer 2 frame and transmitting the generated layer 3 packet, and thecomputer including a plurality of ports which is capable of transmittingand receiving data, wherein the network relay program causes thecomputer to function as: a detection unit which detects a failure of anetwork connected via the port; and a transmission processing unit whichgenerates a plurality of layer 3 packets from one layer 2 frame receivedvia the port when the failure of the network is detected by thedetection unit, and transmits the generated plurality of layer 3 packetsto the network via the plurality of ports.